package d0523_io;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

public class 文件复制 {

	public static void main(String[] args) {

		if (args.length < 2) {
			System.out.println("请输入复制的源文件和目标文件");
			return;
		}

		String srcfile = args[0];
		String destfile = args[1];

		FileInputStream fis = null;
		FileOutputStream fos = null;

		try {
			// 文件输入流, 如果目标文件不存在, 会抛出异常
			fis = new FileInputStream(srcfile);
			// 文件输出流, 如果目标文件不存在, 会自动的创建
			fos = new FileOutputStream(destfile);

			byte[] buffer = new byte[1024]; // 一次读取最大1k字节
			int count = 0;
			while ((count = fis.read(buffer)) > 0) {
				// 输出到目标文件
				fos.write(buffer, 0, count);
			}
		} catch (FileNotFoundException e) {
			System.out.println("源文件不存在");
		} catch (IOException e) {
			System.out.println("文件复制失败");
		} finally {
			// 关闭流
			try {
				if (fis != null)
					fis.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
			try {
				if (fos != null)
					fos.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}

	}

}
